package com.shenglue.ssi.action;

import java.util.List;

import com.shenglue.ssi.domain.Good;
import com.shenglue.ssi.service.GoodService;

import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.ServletActionContext;

public class GoodAction extends BaseAction {

	private static final long serialVersionUID = 1L;
	private Good good;		// 对应的 Bean
	private int goodId;		// 删除/修改 的 记录之Id
	private GoodService goodService; // 依赖的 Service

	/**
	 * 查询所有商品信息方法
	 */
	public String queryAll() throws Exception {
		List<Good> list = goodService.selectAllGood();
		if( list != null ) {
			HttpServletRequest request = ServletActionContext.getRequest();
			request.setAttribute( "goodList", list );
		}else{
			// 不能认为是错误，因为一开始是没有数据的  return INPUT;
		}


		return SUCCESS;
	}

	/**
	 * 按条件查询 商品信息方法
	 */
//	public String selectGoodByCond() throws Exception {
//		List<Good> list = goodService.selectGoodByCond ( good );
//		if( list != null ) {
//			HttpServletRequest request = ServletActionContext.getRequest();
//			request.setAttribute( "goodList", list );
//		}else{
//			// 不能认为是错误，因为一开始是没有数据的  return INPUT;
//		}
//
//		boolean flag = queryAllSupp( 1 );
//		if( flag == false ) {
//			return ERROR;
//		}
//
//		return SUCCESS;
//	}

	/**
	 * 增加商品记录方法
	 */
	public String addNew() throws Exception {
		boolean flag = goodService.saveGood( good );
		if(flag==true){
			return SUCCESS;
		}else{
			return ERROR;
		}
	}

	/**
	 * 删除商品记录方法
	 */
	public String delete() throws Exception {

		boolean flag = goodService.deleteGood( goodId );
		if( flag == true ) {
			return SUCCESS;
		}else{
			return ERROR;
		}
	}

	/**
	 * 修改商品记录方法
	 */
	public String update() throws Exception {

		boolean flag = goodService.updateGood( good );
		if( flag == true ) {
			return SUCCESS;
		}else{
			return ERROR;
		}
	}


	/**
	 * 准备 转向 新增 商品记录 的界面
	 */
	public String prepareAddGood() {

		return SUCCESS;

	}

	/**
	 * 准备 转向 修改 商品记录 的界面
	 */
//	public String prepareModGood() {
//		good = goodService.getOneGoodForUpdate( goodId );
//		if( good == null ) {
//			return ERROR;
//		}
//
//		return SUCCESS;
//	}



	public GoodAction() {
	}

	public Good getGood() {
		return good;
	}

	public void setGood(Good good) {
		this.good = good;
	}

	public int getGoodId() {
		return goodId;
	}

	public void setGoodId(int goodId) {
		this.goodId = goodId;
	}

	public GoodService getGoodService() {
		return goodService;
	}

	public void setGoodService(GoodService goodService) {
		this.goodService = goodService;
	}

}
